﻿namespace pandx.Mulan.Authorization
{
    public static class AppPermissions
    {
        public const string Pages = "Pages";

        public const string Pages_Administration = "Pages.Administration";
        
        //User
        public const string Pages_Administration_Users = "Pages.Administration.Users";
        public const string Pages_Administration_Users_Create = "Pages.Administration.Users.Create";
        public const string Pages_Administration_Users_Update = "Pages.Administration.Users.Update";
        public const string Pages_Administration_Users_Delete = "Pages.Administration.Users.Delete";
        public const string Pages_Administration_Users_Unlock = "Pages.Administration.Users.Unlock";
        public const string Pages_Administration_Users_ChangePassword = "Pages.Administration.Users.ChangePassword";
        public const string Pages_Administration_Users_Export = "Pages.Administration.Users.Export";
        public const string Pages_Administration_Users_Import = "Pages.Administration.Users.Import";
        public const string Pages_Administration_Users_Browse = "Pages.Administration.Users.Browse";
        public const string Pages_Administration_Users_Permission = "Pages.Administration.Users.Permission";

        //Role
        public const string Pages_Administration_Roles = "Pages.Administration.Roles";
        public const string Pages_Administration_Roles_Delete = "Pages.Administration.Roles.Delete";
        public const string Pages_Administration_Roles_Create = "Pages.Administration.Roles.Create";
        public const string Pages_Administration_Roles_Update = "Pages.Administration.Roles.Update";
        public const string Pages_Administration_Roles_Browse= "Pages.Administration.Roles.Browse";

        //OrganizationUnit
        public const string Pages_Administration_OrganizationUnits = "Pages.Administration.OrganizationUnits";
        public const string Pages_Administration_OrganizationUnits_Browse = "Pages.Administration.OrganizationUnits.Browse";

        public const string Pages_Administration_OrganizationUnits_Create =
            "Pages.Administration.OrganizationUnits.Create";

        public const string Pages_Administration_OrganizationUnits_Update =
            "Pages.Administration.OrganizationUnits.Update";

        public const string Pages_Administration_OrganizationUnits_Delete =
            "Pages.Administration.OrganizationUnits.Delete";

        public const string Pages_Administration_OrganizationUnits_AddUser =
            "Pages.Administration.OrganizationUnits.AddUser";
        
        public const string Pages_Administration_OrganizationUnits_RemoveUser =
            "Pages.Administration.OrganizationUnits.RemoveUser";
        

        //Audit
        public const string Pages_Administration_Audits = "Pages.Administration.Audits";
        public const string Pages_Administration_Audits_Browse = "Pages.Administration.Audits.Browse";
        public const string Pages_Administration_Audits_Export = "Pages.Administration.Audits.Export";

        //Maintenance
        public const string Pages_Administration_Maintenances = "Pages.Administration.Maintenances";
        public const string Pages_Administration_Maintenances_Browse = "Pages.Administration.Maintenances.Browse";
        public const string Pages_Administration_Maintenances_Export = "Pages.Administration.Maintenances.Export";
        public const string Pages_Administration_Maintenances_Clear = "Pages.Administration.Maintenances.Clear";

        //Setting
        public const string Pages_Administration_Settings = "Pages.Administration.Settings";
        public const string Pages_Administration_Settings_Browse = "Pages.Administration.Settings.Browse";
        public const string Pages_Administration_Settings_Save = "Pages.Administration.Settings.Save";

        //FlowScheme
        public const string Pages_Administration_FlowSchemes = "Pages.Administration.FlowSchemes";
        public const string Pages_Administration_FlowSchemes_Browse = "Pages.Administration.FlowSchemes.Browse";
        public const string Pages_Administration_FlowSchemes_Create = "Pages.Administration.FlowSchemes.Create";
        public const string Pages_Administration_FlowSchemes_Update = "Pages.Administration.FlowSchemes.Update";
        public const string Pages_Administration_FlowSchemes_Delete = "Pages.Administration.FlowSchemes.Delete";
        public const string Pages_Administration_FlowSchemes_Export = "Pages.Administration.FlowSchemes.Export";
        
        //DictionaryCategory
        public const string Pages_Administration_DictionaryCategories = "Pages.Administration.DictionaryCategories";

        public const string Pages_Administration_DictionaryCategories_Browse =
            "Pages.Administration.DictionaryCategories.Browse";

        public const string Pages_Administration_DictionaryCategories_Create =
            "Pages.Administration.DictionaryCategories.Create";

        public const string Pages_Administration_DictionaryCategories_Update =
            "Pages.Administration.DictionaryCategories.Update";

        public const string Pages_Administration_DictionaryCategories_Delete =
            "Pages.Administration.DictionaryCategories.Delete";

        public const string Pages_Administration_DictionaryCategories_Export =
            "Pages.Administration.DictionaryCategories.Export";

        //Dictionary
        public const string Pages_Administration_Dictionaries = "Pages.Administration.Dictionaries";
        public const string Pages_Administration_Dictionaries_Browse = "Pages.Administration.Dictionaries.Browse";
        public const string Pages_Administration_Dictionaries_Create = "Pages.Administration.Dictionaries.Create";
        public const string Pages_Administration_Dictionaries_Update = "Pages.Administration.Dictionaries.Update";
        public const string Pages_Administration_Dictionaries_Delete = "Pages.Administration.Dictionaries.Delete";
        public const string Pages_Administration_Dictionaries_Export = "Pages.Administration.Dictionaries.Export";


        //FormScheme
        public const string Pages_Administration_FormSchemes = "Pages.Administration.FormSchemes";
        public const string Pages_Administration_FormSchemes_Browse = "Pages.Administration.FormSchemes.Browse";
        public const string Pages_Administration_FormSchemes_Create = "Pages.Administration.FormSchemes.Create";
        public const string Pages_Administration_FormSchemes_Update = "Pages.Administration.FormSchemes.Update";
        public const string Pages_Administration_FormSchemes_Delete = "Pages.Administration.FormSchemes.Delete";
        public const string Pages_Administration_FormSchemes_Export = "Pages.Administration.FormSchemes.Export";

        //Book
        public const string Pages_Books = "Pages.Books";
        public const string Pages_Books_Browse = "Pages.Books.Browse";
        public const string Pages_Books_Create = "Pages.Books.Create";
        public const string Pages_Books_Update = "Pages.Books.Update";
        public const string Pages_Books_Delete = "Pages.Books.Delete";
        public const string Pages_Books_Export = "Pages.Books.Export";
        
        //FlowInstance
        public const string Pages_FlowInstances = "Pages.FlowInstances";
        public const string Pages_FlowInstances_Browse = "Pages.FlowInstances.Browse";
        public const string Pages_FlowInstances_Launch = "Pages.FlowInstances.Launch"; 
        public const string Pages_FlowInstances_Export = "Pages.FlowInstances.Export";
        public const string Pages_FlowInstances_Verify = "Pages.FlowInstances.Verify"; 
        public const string Pages_FlowInstances_Recall = "Pages.FlowInstances.Recall";
        public const string Pages_FlowInstances_Restart = "Pages.FlowInstances.Restart";
        public const string Pages_FlowInstances_Display = "Pages.FlowInstances.Display";
        public const string Pages_FlowInstances_Delete = "Pages.FlowInstances.Delete";
        public const string Pages_FlowInstances_Working = "Pages.FlowInstances.Working";

        public const string Pages_Files = "Pages.Files";
        public const string Pages_Files_Upload = "Pages.Files.Upload";
        public const string Pages_Files_Download = "Pages.Files.Download";
    }
}